home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Speccy ClassiX 1998
/
Speccy ClassiX 98.iso
/
amiga_system
/
the_aminet
/
comm
/
fido
/
mm_autoreply.lha
/
MM_AutoReply.rexx
< prev
Wrap
OS/2 REXX Batch file
|
1995-08-20
|
4KB
|
170 lines
/*
** $VER: MM_AutoReply V1.0 (21.08.95)
**
** Written by Reinaldo Erdey
**
*/
options results
PARSE ARG Export
if Export = '?' then Call Usage
/* ---------------------------------------------------------------------- */
/* schecken auf Host */
/* ---------------------------------------------------------------------- */
if ~show(p,"MAILMANAGER") then
do
Say d2c(10)||'Warning: MailManager is not present !'||d2c(10)
Exit
end
/* ---------------------------------------------------------------------- */
/* Variablen Init */
/* ---------------------------------------------------------------------- */
Address 'MAILMANAGER'
MM.Area = 'Matrix'
MM_GetSysop Sysop
MM_GetAddrs DomainAdr
MM.LogLevel = 2
MM.PrgName = 'AutoReply V1.0'
FromName = '#?'
ToName = Sysop
Subject = '#?'
InFlags = 'UNR SENT IMP !READ'
MaxQuote = 10
ReplyFlags = '!UNR'
/* ---------------------------------------------------------------------- */
/* Main Programm */
/* ---------------------------------------------------------------------- */
MAIN:
MM_SearchMsgs MM.Area Msg '"'FromName'"' '"'ToName'"' '"'Subject'"' '"' '"'InFlags
DO M = 0 FOR MSG.Count
IF MSG.count >=1 THEN Call AutoMsg(Msg.M)
End
Exit
/* ---------------------------------------------------------------------- */
/* Eine Message kam an und lesen */
/* ---------------------------------------------------------------------- */
AutoMsg:
PARSE ARG MsgNr
MM_ReadMsg MM.Area MsgNr Tmp
MM_EditMsgFlags MM.Area MsgNr 'ReplyFlags'
/* ---------------------------------------------------------------------- */
/* -- Keine Antwort an AREAFIX oder RAID -- */
If upper(Tmp.FROM) = 'AREAFIX' | upper(Tmp.FROM) = 'RAID' then Return
/* ---------------------------------------------------------------------- */
/* .... und antworten */
/* ---------------------------------------------------------------------- */
Tmp.FILE = 'T:MM.TRANS'
c = 0
MM.User.c = ' > --- ACHTUNG !!! - MESSAGE GENERATET BY 'upper(MM.PrgName)' - ACHTUNG !!! --- <'
c = c + 1
MM.User.c = ''
c = c + 1
MM.User.c = 'Hi 'SUBWORD(Tmp.FROM,1,1)' !'
c = c + 1
MM.User.c = ''
c = c + 1
MM.User.c = Tmp.FROM' schrieb am 'Tmp.DATE' an 'Tmp.TO':'
c = c + 1
MM.User.c = ''
c = c + 1
IF Tmp.TEXT.count >MaxQuote Then Tmp.TEXT.count = MaxQuote
IF Tmp.TEXT.count >1 THEN DO
Cont = 0
DO b = 0 FOR Tmp.TEXT.count
MM.User.c = ' 'SUBSTR(SUBWORD(Tmp.FROM,1,1),1,1)''SUBSTR(SUBWORD(Tmp.FROM,2,1),1,1)'> 'Tmp.TEXT.b
c = c + 1
Tmp.TEXT.count = Tmp.TEXT.b
Cont = Cont + 1
END
Tmp.TEXT.count = Cont
END
MM.User.c = ''
c = c + 1
MM.User.c = 'Ich habe deine Message zum Thema "'Tmp.SUBJ'" erhalten. !'
c = c + 1
MM.User.c = ''
c = c + 1
MM.User.c = 'Im moment ist 'Tmp.To' nicht erreichbar, sollte deine Message eine Antwort'
c = c + 1
MM.User.c = 'erfordern, warte umbedigt erst das Reply vom 'SUBWORD(Tmp.To,1,1)' ab.'
c = c + 1
MM.User.c = ''
c = c + 1
MM.User.c = 'SCHREIBE BITTE KEINE WEITEREN MESSAGEN ZUM THEMA:'
c = c + 1
MM.User.c = '"'Tmp.SUBJ'"'
c = c + 1
MM.User.c = ''
c = c + 1
MM.User.c = 'Sobald wie moeglich wird 'SUBWORD(Tmp.To,1,1)' diese Message beantworten.'
c = c + 1
MM.User.c = ''
c = c + 1
MM.User.c = 'mit gruss 'SUBWORD(Tmp.To,1,1)' --- ['MM.PrgName'] ---'
c = c + 1
MM.User.Count = c
MM_WriteStem Tmp.FILE 'MM.User'
CALL WriteLog(MM.PrgName '- Reply to 'Tmp.FROM' 'Tmp.FROMADDR)
Tmp.TO = Tmp.FROM
Tmp.FROM = ToName
Tmp.TOADDR = Tmp.FROMADDR
Tmp.FROMADDR = DomainAdr.0
Tmp.SUBJ = 'RE: 'Tmp.SUBJ
Tmp.FLAGS = 'PVT'
MM_WriteMsg MM.Area Tmp
If upper(Export) ~= 'NO' then MM_Export MM.Area
MM_DeleteFile Tmp.FILE
Return
/* ---------------------------------------------------------------------- */
/* Log schreiben */
/* ---------------------------------------------------------------------- */
WriteLog: PROCEDURE EXPOSE MM.
PARSE ARG Testo
MM_WriteLog 'Testo' MM.LogLevel
RETURN
/* ---------------------------------------------------------------------- */
/* Usage ausgeben */
/* ---------------------------------------------------------------------- */
USAGE:
Say d2c(10)||'USAGE: rx MM_AutoReply.rexx [No/S]'
Say ' Beim Parameter NO wird kein Export ausgefuehrt, sonnst immer.'||d2c(10)
exit
/* ---------------------------------------------------------------------- */